package com.ruoyi.labdanger.service;

import java.util.List;
import com.ruoyi.labdanger.domain.LabApplyOccupationDetails;

/**
 * 申请领用明细Service接口
 * 
 * @author ruoyi
 * @date 2022-03-20
 */
public interface ILabApplyOccupationDetailsService 
{
    /**
     * 查询申请领用明细
     * 
     * @param occupationDetailsId 申请领用明细ID
     * @return 申请领用明细
     */
    public LabApplyOccupationDetails selectLabApplyOccupationDetailsById(Long occupationDetailsId);

    /**
     * 查询申请领用明细列表
     * 
     * @param labApplyOccupationDetails 申请领用明细
     * @return 申请领用明细集合
     */
    public List<LabApplyOccupationDetails> selectLabApplyOccupationDetailsList(LabApplyOccupationDetails labApplyOccupationDetails);

    /**
     * 新增申请领用明细
     * 
     * @param labApplyOccupationDetails 申请领用明细
     * @return 结果
     */
    public int insertLabApplyOccupationDetails(LabApplyOccupationDetails labApplyOccupationDetails);

    /**
     * 修改申请领用明细
     * 
     * @param labApplyOccupationDetails 申请领用明细
     * @return 结果
     */
    public int updateLabApplyOccupationDetails(LabApplyOccupationDetails labApplyOccupationDetails);

    /**
     * 批量删除申请领用明细
     * 
     * @param occupationDetailsIds 需要删除的申请领用明细ID
     * @return 结果
     */
    //public int deleteLabApplyOccupationDetailsByIds(Long[] occupationDetailsIds);

    /**
     * 删除申请领用明细信息
     * 
     * @param occupationDetailsId 申请领用明细ID
     * @return 结果
     */
    public int deleteLabApplyOccupationDetailsById(Long occupationDetailsId);

    /**
     * 申领出库
     * @param labApplyOccupationDetails 出库数据
     * @return 结果
     */
    public int deliver(LabApplyOccupationDetails labApplyOccupationDetails);
    
    public int finishUpdateStatus(Long instanceId);
    
    public List<LabApplyOccupationDetails>  queryLabApplyOccupationDetailsList(LabApplyOccupationDetails labApplyOccupationDetails);
}
